#ifndef OBJECT_H
#define OBJECT_H

#include "game.h"
#include "scene.h"
#include "drawer.h"

class CObject {
public:
    CObject();
    CObject(int tx, int ty);
    ~CObject();

    int GetX();
    int GetY();
    int GetW();
    int GetH();
    void SetX(int tx);
    void SetY(int ty);
    void SetW(int tw);
    void SetH(int th);
    void Move(int xx, int xy);
    void MoveTo(int xx, int xy);
    virtual void Do();
    virtual void Draw();
    void resetTime();
    void setTime(int to);
    int getTime();
    int getTicks();
    int GetOpDelay();
    void SetOpDelay(int to);
    virtual bool isCreep();
    int GetID();
    virtual void Damage(int what);

    virtual void SetDMG(int td);
    virtual void SetRadius(int tr);
    virtual void SetSpeedRatio(int tr);

    virtual int GetDMG();
    virtual int GetRadius();
    virtual int GetSpeedRatio();

private:
    int x,y;
    int w,h;
    int lasttime;
    int opdelay;
    int id;

    //TOWER RELATED
    int dmg;
    int radius;
    int speedratio;

};

#endif // OBJECT_H
